package com.woniu.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * 表名：user_address
 * 表注释：地址表
*/
@Table(name = "user_address")
@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserAddress  implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 地址编号
     */
    @Id
    @Column(name = "address_id")
    private Integer addressId;

    /**
     * 所属用户
     */
    @Column(name = "account_id")
    private Integer accountId;

    /**
     * 省份编号
     */
    @Column(name = "province_code")
    private String provinceCode;

    /**
     * 城市编号
     */
    @Column(name = "city_code")
    private String cityCode;

    /**
     * 区域编号
     */
    @Column(name = "area_code")
    private String areaCode;

    /**
     * 街道编号
     */
    @Column(name = "street_code")
    private String streetCode;

    /**
     * 社区编号
     */
    @Column(name = "villages_code")
    private String villagesCode;

    /**
     * 具体地址
     */
    private String details;

    /**
     * 收件人姓名
     */
    @Column(name = "receiver_name")
    private String receiverName;

    /**
     * 收件人联系方式
     */
    @Column(name = "receiver_tel")
    private String receiverTel;

    /**
     * 是否默认 (1默认  ;  0 不默认)
     */
    @Column(name = "is_default")
    private Byte isDefault;

    /**
     * 图片状态(0正常 1逻辑删除)
     */
    @Column(name = "is_delete")
    private Byte isDelete;

    /**
     * 创建时间
     */
    @Column(name = "create_time")
    private Date createTime;

    /**
     * 更新时间
     */
    @Column(name = "update_time")
    private Date updateTime;

    /**
     * 获取地址编号
     *
     * @return addressId - 地址编号
     */
    public Integer getAddressId() {
        return addressId;
    }

    /**
     * 设置地址编号
     *
     * @param addressId 地址编号
     */
    public void setAddressId(Integer addressId) {
        this.addressId = addressId;
    }

    /**
     * 获取所属用户
     *
     * @return accountId - 所属用户
     */
    public Integer getAccountId() {
        return accountId;
    }

    /**
     * 设置所属用户
     *
     * @param accountId 所属用户
     */
    public void setAccountId(Integer accountId) {
        this.accountId = accountId;
    }

    /**
     * 获取省份编号
     *
     * @return provinceCode - 省份编号
     */
    public String getProvinceCode() {
        return provinceCode;
    }

    /**
     * 设置省份编号
     *
     * @param provinceCode 省份编号
     */
    public void setProvinceCode(String provinceCode) {
        this.provinceCode = provinceCode;
    }

    /**
     * 获取城市编号
     *
     * @return cityCode - 城市编号
     */
    public String getCityCode() {
        return cityCode;
    }

    /**
     * 设置城市编号
     *
     * @param cityCode 城市编号
     */
    public void setCityCode(String cityCode) {
        this.cityCode = cityCode;
    }

    /**
     * 获取区域编号
     *
     * @return areaCode - 区域编号
     */
    public String getAreaCode() {
        return areaCode;
    }

    /**
     * 设置区域编号
     *
     * @param areaCode 区域编号
     */
    public void setAreaCode(String areaCode) {
        this.areaCode = areaCode;
    }

    /**
     * 获取街道编号
     *
     * @return streetCode - 街道编号
     */
    public String getStreetCode() {
        return streetCode;
    }

    /**
     * 设置街道编号
     *
     * @param streetCode 街道编号
     */
    public void setStreetCode(String streetCode) {
        this.streetCode = streetCode;
    }

    /**
     * 获取社区编号
     *
     * @return villagesCode - 社区编号
     */
    public String getVillagesCode() {
        return villagesCode;
    }

    /**
     * 设置社区编号
     *
     * @param villagesCode 社区编号
     */
    public void setVillagesCode(String villagesCode) {
        this.villagesCode = villagesCode;
    }

    /**
     * 获取具体地址
     *
     * @return details - 具体地址
     */
    public String getDetails() {
        return details;
    }

    /**
     * 设置具体地址
     *
     * @param details 具体地址
     */
    public void setDetails(String details) {
        this.details = details;
    }

    /**
     * 获取收件人姓名
     *
     * @return receiverName - 收件人姓名
     */
    public String getReceiverName() {
        return receiverName;
    }

    /**
     * 设置收件人姓名
     *
     * @param receiverName 收件人姓名
     */
    public void setReceiverName(String receiverName) {
        this.receiverName = receiverName;
    }

    /**
     * 获取收件人联系方式
     *
     * @return receiverTel - 收件人联系方式
     */
    public String getReceiverTel() {
        return receiverTel;
    }

    /**
     * 设置收件人联系方式
     *
     * @param receiverTel 收件人联系方式
     */
    public void setReceiverTel(String receiverTel) {
        this.receiverTel = receiverTel;
    }

    /**
     * 获取是否默认 (1默认  ;  0 不默认)
     *
     * @return isDefault - 是否默认 (1默认  ;  0 不默认)
     */
    public Byte getIsDefault() {
        return isDefault;
    }

    /**
     * 设置是否默认 (1默认  ;  0 不默认)
     *
     * @param isDefault 是否默认 (1默认  ;  0 不默认)
     */
    public void setIsDefault(Byte isDefault) {
        this.isDefault = isDefault;
    }

    /**
     * 获取图片状态(0正常 1逻辑删除)
     *
     * @return isDelete - 图片状态(0正常 1逻辑删除)
     */
    public Byte getIsDelete() {
        return isDelete;
    }

    /**
     * 设置图片状态(0正常 1逻辑删除)
     *
     * @param isDelete 图片状态(0正常 1逻辑删除)
     */
    public void setIsDelete(Byte isDelete) {
        this.isDelete = isDelete;
    }

    /**
     * 获取创建时间
     *
     * @return createTime - 创建时间
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * 设置创建时间
     *
     * @param createTime 创建时间
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * 获取更新时间
     *
     * @return updateTime - 更新时间
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * 设置更新时间
     *
     * @param updateTime 更新时间
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
}